#include "fxcc/core/BaseImporter.h"
#include "fxcc/mono/CSharpMetaCacheFile.h"

template<>
void fxcc::yml::Serializer::Encode<CSharpMetaCacheFile>(YAML::Node& node, const CSharpMetaCacheFile& inst)
{
	SetMapVariableKeyFilter<CSharpMetaCache>(node, "m_Caches", inst.m_Caches, [&](const CSharpMetaCache& inst) {return true; }, [&](const std::string& key) {return fs::exists(key); });
}


template<>
bool fxcc::yml::Serializer::Decode<CSharpMetaCacheFile>(const YAML::Node& node, CSharpMetaCacheFile& inst)
{
	GetMapVariable<CSharpMetaCache>(node, "m_Caches", inst.m_Caches);
	return true;
}